package com.ftg.learn.framework.sm;

import com.ftg.learn.framework.sm.mapper.Abc;
import com.ftg.learn.framework.sm.mapper.TeacherMapper;
import com.ftg.learn.framework.sm.mapper.X;
import com.ftg.learn.framework.sm.service.TeacherService;
import org.apache.ibatis.session.SqlSession;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

/**
 * 整合模块
 *    整合spring + mybatis
 * @author 布衣
 */
public class SpringMybatis {
    public static void main(String[] args) {
        // spring   mybatis 整合在一起 : SM  S(spring)S(springboot)M(mybatis)

        // web 后台java整合在一起  (。。。)

        // spring 容器级别框架 - 容器 ： 用来管理类的生命周期以及类与类之间的关系

        //mybatis 大量核心类，持久层（mysql） xml 接口  javabase

        // spring容器  AnnotationConfigapplication

        // sqlsessionfactroy sqlsession  接口

        //我们的核心容器 (java - 类与注册模式)  ac 里面有了一些核心类了

        //spring aop :  面向切面编程 -->

        // 切面 ：
        // 切点 ：
        // 目标类是 ：
        // 切面类 ：
        //连接点 ：
        // 通知是什么

        AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext();
        ac.scan("com.ftg.learn.framework.sm");
        ac.refresh();

        Abc bean1 = ac.getBean(Abc.class);
        System.out.println(bean1.test1("张三丰"));

    }
}
